﻿/// <summary>
/// Developer: CHOOI KAH WAI
/// Last Modified: 27/10/2009
/// </summary>

using System;
using System.Collections.Generic;
using System.Collections;

namespace ARSS.Visual
{
    /// <summary>
    /// Visual presenter
    /// </summary>
    interface IPresenter
    {
        /// <summary>
        /// Camera update
        /// </summary>
        /// <param name="_buffer">Video buffer</param>
        void OnCameraUpdate(byte[] buffer);

        /// <summary>
        /// AR update
        /// </summary>
        /// <param name="_markers">Detected markers</param>
        void OnARUpdate(ArrayList markers);

        /// <summary>
        /// Align 3D camera
        /// </summary>
        /// <param name="_matrix">Project matrix</param>
        void AlignCamera(double[] matrix);

        /// <summary>
        /// Get collide scene node 
        /// </summary>
        /// <param name="matrix"></param>
        /// <returns></returns>
        SceneNode GetCollision(double[] matrix);

        /// <summary>
        /// On sceen display message
        /// </summary>
        /// <param name="message"></param>
        void DisplayMsg(string message);
    }
}
